﻿namespace RestAPI
{
    /// <summary>
    /// P2P呼叫状态通知接口
    /// </summary>
    public class MP2pCallState : RestAPIModelBase
    {
        private string callflowid;
        private string status;
        private string number;
        private string type;
        private string recordurl;
        private string duration;
        private string starttime;
        private string endtime;

        /// <summary>
        /// 呼叫流水号，在同一企业必须保证不重复。建议在流水号中包含时间戳
        /// </summary>
        public string Callflowid { get { return callflowid; } set { callflowid = value; } }
        /// <summary>
        /// 呼叫结果
        /// [100] 开始呼叫
        /// [200] 外呼成功（用户已接听）
        /// [201] 外呼成功（用户已挂机）
        /// [404] 外呼失败（用户号码不正确或空号找不到用户）
        /// [486] 外呼失败（用户主动拒绝或用户忙）
        /// [487] 外呼失败（用户超时无应答）
        /// [489] 未呼出  （另外一方已经提前挂机）
        /// [500] 外呼失败(内部线路故障)
        /// [600] 外呼失败（原因：无可用网关线路或线路全忙，未呼出）
        /// </summary>
        public string Status { get { return status; } set { status = value; } }
        /// <summary>
        /// 状态对应的号码
        /// </summary>
        public string Number { get { return number; } set { number = value; } }
        /// <summary>
        /// 号码属性，如callednumber或者callingnumber
        /// </summary>
        public string Type { get { return type; } set { type = value; } }
        /// <summary>
        /// 录音路径
        /// </summary>
        public string Recordurl { get { return recordurl; } set { recordurl = value; } }
        /// <summary>
        /// 通话时长
        /// </summary>
        public string Duration { get { return duration; } set { duration = value; } }
        /// <summary>
        /// 通话开始时间
        /// </summary>
        public string Starttime { get { return starttime; } set { starttime = value; } }
        /// <summary>
        /// 通话结束时间
        /// </summary>
        public string Endtime { get { return endtime; } set { endtime = value; } }
    }
}